package com.zzit.vjv.biz.impl.documentReview_impl.developer;


import com.zzit.vjv.biz.documentReview_biz.developer.DevListBiz;
import com.zzit.vjv.dao.documentReview_dao.developer.DevListDao;
import com.zzit.vjv.entity.documentReview_entity.*;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Service("devListBiz")
public class DevListImpl implements DevListBiz {

    @Resource(name = "devListDao")
    private DevListDao devListDao;

    /**
     * 三级联动方法,根据父级节点进行查找(用于前台三级联动)
     * @param pid
     * @return
     */
    @Override
    public List<AppCategory> findByParentIdAppCategoryList(Integer pid) {


        return pid==null?devListDao.findByParentIdAppCategoryList(null):devListDao.findByParentIdAppCategoryList(pid);
    }

    /**
     * 查询app状态/以及app所属平台
     * @param typeCode 用于分离
     * @return
     */
    @Override
    public List<DataDictionary> findDataDictionary(String typeCode){

        return typeCode==null?devListDao.findDataDictionary(null):devListDao.findDataDictionary(typeCode);
    }


    /**
     *用于显示前台app信息列表
     * @param map 前台所有条件
     * @return
     */
    @Override
    public List<AppInfo_result> findAppInfo_resultList(Map<String, Object> map) {



        return map==null?devListDao.findAppInfo_resultList(null):devListDao.findAppInfo_resultList(map);
    }


    /**
     * 根据APKName查找到AppInfo表的akp名称(用于前台添加页面,进行判断akp名称是否存在)
     * @param APKName apk名称
     * @return
     */
    @Override
    public AppInfo AppInfoAPKNameByAPKNameFind(String APKName) {


        return devListDao.AppInfoAPKNameByAPKNameFind(APKName);
    }

    /**
     * app历史版本信息(用于前台新增版本信息页面列表)
     * @param Id app信息表id
     * @return
     */
    @Override
    public List<OldAppVersion> OldAppVersionList(Integer Id) {



        return Id!=null?devListDao.OldAppVersionList(Id):new ArrayList<OldAppVersion>();
    }


    /**
     * 查看app基础信息方法
     * @param aid
     * @return
     */
    @Override
    public AppInfo_result appview(Integer aid) {


        return aid!=null?devListDao.appview(aid):new AppInfo_result();
    }



    /**
     * 根据id查找app最新版本信息(用于修改版本展示要修改的版本信息)
     * @param vid
     * @return
     */
    @Override
    public AppVersion findAppVersionById(Integer vid) {


        return vid!=null?devListDao.findAppVersionById(vid):new AppVersion();
    }
}
